package com.smarthome.api.mobile.service;

import com.smarthome.common.mobile.Service;
import com.smarthome.domain.mobile.MobileCodeEnum;
import com.smarthome.domain.mobile.MobileResponse;
import com.smarthome.domain.mobile.req.MobileSmartHomeRequest;

/**
 * 
* @ClassName: MobileSmartHomeService
* @Description: 智能家居移动端service
* @author cyj
* @date 2015年10月18日 下午3:25:06
*
 */
@org.springframework.stereotype.Service("mobile.smartHome.service")
public class MobileSmartHomeService implements Service<MobileResponse<?>> {

	//待注入智能家居service
	
	/**
	 * 
	* @Title: getPropertyRepairList 
	* @Description: 获取智能家居列表
	* @param request
	* @param response
	* void
	* @throws 
	* @author cyj
	 */
	public void getList(MobileSmartHomeRequest request,MobileResponse<?> response) {//泛型待改为智能家居列表
		
		if(request.getDoorId() == null) {
			response.setMobileCodeObj(MobileCodeEnum.SMART_HOME_NOT_DOOR);
			return;
		}
		//待创建智能家居查询对象
		//待将request的值赋予智能家居查询对象
		//待完善智能家居查询对象属性
		//待查询智能家居总数
		int count = 0;
		if(request.getStartIndex() != null && request.getStartIndex() >= count) {
			//response.setMobileCodeObj(MobileCodeEnum.PAGE_NOTSHOW);
			return;
		}
		try {
			//待查询智能家居列表，并将结果设置给response的data属性
		}catch(Exception e) {
			e.printStackTrace();
			response.setMobileCodeObj(MobileCodeEnum.SYSTEM_ERROR);
		}
		
	}
	
	
	
	/**
	 * 
	* @Title: operation 
	* @Description: 操作智能家居
	* @param request
	* @param response
	* void
	* @throws 
	* @author cyj
	 */
	public void operation(MobileSmartHomeRequest request,MobileResponse<?> response) {
		if(request.getId() == null) {
			response.setMobileCodeObj(MobileCodeEnum.SMART_HOME_NOT_ID);
			return;
		}
		
		//待根据id查询出智能家居对象，如果对象不存在则返回MobileCodeEnum.SMART_HOME_NOT_ID
		//如果智能家居对象的状态为开启则改为关闭，如果是关闭则改为开启
		//待更新保存智慧家居对象
		int result = 0;
		try {
			result = 0;//更新保存
		}catch(Exception e) {
			response.setMobileCodeObj(MobileCodeEnum.SYSTEM_ERROR);
			return;
		}
		
		if(result != 1) {
			response.setMobileCodeObj(MobileCodeEnum.SMART_HOME_UPDATE_FAIL);
			return;
		}
		
	}
}
